﻿using System;
using System.Collections.Generic;

namespace E.Model
{
    [Serializable]
    public class CourseCategoryModel
    {
        private int _id;
        private string _name;

        public int ID
        {
            get;
            set;
        }

        public string Name
        {
            get;
            set;
        }
    }

    /// <summary>
    /// 学生选择一些不用加入班级即可参加的课程model
    /// </summary>
    [Serializable]
    public class InternalFreeCourseModel
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public string ProjectName { get; set; }
        public int ProjectId { get; set; }

    }

    [Serializable]
    public class InternalFreeCourseSearchModel
    {
        public int CourseID { get; set; }
        public int ProjectID { get; set; }
        public int DelFlag { get; set; }

        public int SkillGroup { get; set; }
    }

    [Serializable]
    public class InternalFreeCourseListModel
    {
        public int TotalCount { get; set; }
        public IList<InternalFreeCourseModel> List { get; set; }
    }

    [Serializable]
    public class CourseModel
    {
        private int _id;
        private int _categoryid;
        private string _categoryname;
        private string _name;
        private decimal _schoolhour;
        private string _description;

        public int ID
        {
            get;
            set;
        }

        public int CategoryID
        {
            get;
            set;
        }

        public string CategoryName
        {
            get;
            set;
        }

        public string Name
        {
            get;
            set;
        }

        public decimal SchoolHour
        {
            get;
            set;
        }

        public string Description
        {
            get;
            set;
        }

        public bool IsPublic { get; set; }
        public bool NeedLearn { get; set; }

        public int CnPID { get; set; }
        public string CnPName { get; set; }
        public bool IsInternalPublic { get; set; }
        public bool IsNeedJoinClass { get; set; }

        public int SkillGroup { get; set; }

        public int PrecLevelCourseId { get; set; }
    }

    [Serializable]
    public class SearchCourseModel
    {
        public string Name { get; set; }
        public int CnPID { get; set; }  //认证或项目组ID
        public int CategoryID { get; set; }
        public int IsPublic { get; set; }
        public int DelFlag { get; set; }
    }

    [Serializable]
    public class ShortCourseModel
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public string CnPName { get; set; }
        public string CategoryName { get; set; }
        public bool DelFlag { get; set; }
    }

    [Serializable]
    public class CourseListModel
    {
        public int TotalCount { get; set; }
        public IList<ShortCourseModel> List { get; set; }
    }

    #region 技能组
    [Serializable]
    public class SkillGroup
    {
        public int ID { get; set; }
        public string Name { get; set; }
    }

    [Serializable]
    public class SkillGroupListModel
    {
        public int TotalCount { get; set; }
        public IList<SkillGroup> List { get; set; }
    }
    #endregion

    #region 课件

    [Serializable]
    public class CourseWareModel
    {
        public int ID { get; set; }
        public int CourseID { get; set; }
        public string CourseName { get; set; }
        public string ProjectName { get; set; }
        public int SerialNumber { get; set; }
        public int OriginalSerialNumber { get; set; }
        public string Content { get; set; }
        public string ImgUrl { get; set; }
        public string SoundUrl { get; set; }
        public string VideoUrl { get; set; }
        public string ImgName { get; set; }
        public string SoundName { get; set; }
        public string VideoName { get; set; }
    }

    [Serializable]
    public class ShortCourseWareModel
    {
        public int ID { get; set; }
        public int CourseID { get; set; }
        public string CourseName { get; set; }
        public int ProjectID { get; set; }
        public string ProjectName { get; set; }
        public int SerialNumber { get; set; }
    }

    [Serializable]
    public class SearchCourseWareModel
    {
        public int CourseID { get; set; }
        public int ProjectID { get; set; }
        public int TeacherID { get; set; }
    }

    [Serializable]
    public class CourseWareListModel
    {
        public int TotalCount { get; set; }
        public IList<ShortCourseWareModel> List { get; set; }
    }

    #endregion
}
